jar-ELSE वि स्विच
आयएफ-एलएसई विधान म्हणजे काय?
सी प्रोग्रामिंगमधील आयएफ-एलएसई स्टेटमेंट हे एक सशर्त विधान आहे जे सत्य किंवा चुकीच्या स्थितीवर आधारित भिन्न स्टेटमेन्ट्सची अंमलबजावणी करते. निर्दिष्ट स्थिती सत्य असेल तेव्हाच 'jar' ब्लॉक कार्यान्वित केला जाईल आणि जर निर्दिष्ट स्थिती चुकीची असेल तर दुसरे ब्लॉक कार्यान्वित होईल.
कसे लिहावे
jar(ABaivyaKtai)
{
// sTeTmaenT;
}
nahitar
{
// sTeTmaenT;
}
स्विच स्टेटमेंट म्हणजे काय?
स्विच स्टेटमेंट हे व्हेरिएबलचे मूल्य तपासण्यासाठी आणि सर्व प्रकरणांशी तुलना करण्यासाठी सी प्रोग्रामिंगमध्ये वापरले जाणारे सशर्त विधान आहे. जर मूल्य कोणत्याही परिस्थितीशी जुळले असेल तर त्याचे संबंधित स्टेटमेन्ट्स कार्यान्वित केले जातील. प्रत्येक प्रकरणात काही नाव किंवा क्रमांक ओळखक म्हणून ओळखले जाते. वापरकर्त्याद्वारे प्रविष्ट केलेल्या मूल्याची तुलना केस सापडल्याशिवाय सर्व प्रकरणांशी केली जाईल. जर वापरकर्त्याद्वारे प्रविष्ट केलेले मूल्य कोणत्याही परिस्थितीशी जुळले नाही तर डीफॉल्ट स्टेटमेंट कार्यान्वित केले जाईल.
स्विच स्टेटमेंटचे वाक्यरचना खाली दिले आहे:
naivada(ABaivyaKtai)
{
sYaitai sYair 1:
// sTeTmaenT;
YaaMbavaa;
sYaitai sYair 2:
// sTeTmaenT;
YaaMbavaa;
sYaitai sYair Pna:
// sTeTmaenT;
YaaMbavaa;
dipaflT:
// sTeTmaenT;
}
समानता बी/डब्ल्यू आयएफ-एल्से आणि स्विच
आयएफ-एल्से आणि स्विच दोन्ही निर्णय घेणारी विधाने आहेत. येथे, निर्णय घेण्याच्या विधानांचा अर्थ असा आहे की अभिव्यक्तीचे आउटपुट कोणत्या विधानांची अंमलबजावणी करावी हे ठरवेल.
फरक बी/डब्ल्यू आयएफ-एल्स आणि स्विच स्टेटमेंट
आयएफ-एल्से आणि स्विच स्टेटमेंटमधील फरक खालीलप्रमाणे आहेतः
व्याख्या jar-nahitar 'If-nahitar' विधानातील अभिव्यक्तीच्या परिणामाच्या आधारे, स्टेटमेंट्सचा ब्लॉक कार्यान्वित केला जाईल. जर अट सत्य असेल तर 'जर' ब्लॉक कार्यान्वित होईल अन्यथा 'ब्लॉक कार्यान्वित होईल. स्विच स्टेटमेंट स्विच स्टेटमेंटमध्ये एकाधिक प्रकरणे किंवा निवडी आहेत. वापरकर्ता प्रकरण निर्णय घेईल, जे कार्यान्वित होईल. अभिव्यक्ती If-nahitar यात एकाधिक निवडींसाठी एकच अभिव्यक्ती किंवा एकाधिक अभिव्यक्ती असू शकतात. यामध्ये मूल्ये किंवा शर्तींच्या श्रेणीच्या आधारे अभिव्यक्तीचे मूल्यांकन केले जाते. हे समानता आणि तार्किक अभिव्यक्ती दोन्ही तपासते. स्विच यात फक्त एकच अभिव्यक्ती आहे आणि ही अभिव्यक्ती एकतर एकल पूर्णांक ऑब्जेक्ट किंवा स्ट्रिंग ऑब्जेक्ट आहे. हे केवळ समानता अभिव्यक्ती तपासते. मूल्यांकन If-nahitar आयएफ-एलएसई विधान जवळजवळ सर्व प्रकारच्या डेटाचे मूल्यांकन करू शकते जसे की पूर्णांक, फ्लोटिंग-पॉईंट, वर्ण, पॉईंटर किंवा बुलियन. स्विच स्विच स्टेटमेंट एकतर पूर्णांक किंवा वर्ण मूल्यांकन करू शकते. अंमलबजावणीचा क्रम If-nahitar 'If-nahitar' स्टेटमेंटच्या बाबतीत, एकतर 'jar' ब्लॉक किंवा 'अन्य' ब्लॉक अटच्या आधारे कार्यान्वित केले जाईल. स्विच 'स्विच' स्टेटमेंटच्या बाबतीत, ब्रेक कीवर्ड सापडत नाही तोपर्यंत एकामागून एक प्रकरण कार्यान्वित केले जाईल किंवा डीफॉल्ट स्टेटमेंट कार्यान्वित केले जाईल. डीफॉल्ट अंमलबजावणी If-nahitar जर 'jar' स्टेटमेंटमध्ये अट सत्य नसेल तर डीफॉल्टनुसार, अन्य ब्लॉक स्टेटमेन्ट्स कार्यान्वित केल्या जातील. स्विच जर स्विच स्टेटमेंटमध्ये निर्दिष्ट केलेली अभिव्यक्ती कोणत्याही प्रकरणांशी जुळली नसेल तर डीफॉल्ट स्टेटमेंट, परिभाषित केल्यास, कार्यान्वित केले जाईल. मूल्ये If-nahitar मूल्ये 'jar' स्टेटमेंटच्या आत निर्दिष्ट केलेल्या स्थितीवर आधारित आहेत. मूल्य एकतर 'jar' किंवा 'अन्य' ब्लॉक कार्यान्वित करायचं आहे हे ठरवेल. स्विच या प्रकरणात, वापरकर्त्याने मूल्य निश्चित केले आहे. वापरकर्त्याच्या निवडीच्या आधारे, प्रकरण कार्यान्वित केले जाईल. वापर If-nahitar हे सत्य किंवा खोटे असल्याचे स्थितीचे मूल्यांकन करते. स्विच स्विच स्टेटमेंट एकाधिक प्रकरणांसह व्हेरिएबलच्या मूल्याची तुलना करते. जर मूल्य कोणत्याही प्रकरणांशी जुळले असेल तर या प्रकरणाशी संबंधित स्टेटमेन्टचा ब्लॉक कार्यान्वित केला जाईल. संपादन If-nahitar 'आयएफ-एल्स' विधानात संपादन करणे सोपे नाही जसे की आपण 'अन्य' विधान काढून टाकले आहे, तर ते विनाश तयार करेल. स्विच 'आयएफ-एलएसई' विधानाच्या तुलनेत स्विच स्टेटमेंटमध्ये संपादन करणे सोपे आहे. जर आम्ही स्विचमधून कोणतीही प्रकरणे काढली तर ती इतर प्रकरणांच्या अंमलबजावणीत व्यत्यय आणणार नाही. म्हणूनच, आम्ही असे म्हणू शकतो की स्विच स्टेटमेंट सुधारित करणे आणि देखभाल करणे सोपे आहे. वेग If-nahitar जर निवडी एकाधिक असतील तर 'आयएफ-एल्से' स्टेटमेन्ट्सच्या अंमलबजावणीचा वेग कमी आहे. स्विच स्विच स्टेटमेंटमधील केस स्थिरांक कंपाईल वेळी जंप टेबल तयार करतात. ही जंप टेबल अभिव्यक्तीच्या मूल्याच्या आधारे अंमलबजावणीचा मार्ग निवडते. आमच्याकडे एकाधिक निवड असल्यास, नंतर स्विच स्टेटमेंटची अंमलबजावणी 'आयएफ-एलएसई' स्टेटमेंटच्या समकक्ष तर्कापेक्षा खूपच वेगवान असेल.